/* 
 * File:   tridiagonal.h
 * Author: oddi
 *
 * Created on October 7, 2010, 12:19 PM
 */

#ifndef _TRIDIAGONAL_H
#define	_TRIDIAGONAL_H

#include "global_definitions.h"


#ifdef	__cplusplus
extern "C" {
#endif

    typedef struct struct_tridiagonal_matrix
    {
        int size;
        floatdig *a;
        floatdig *b;
        floatdig *c;
    }tridiagonal_matrix;

    void tridiagonal_init_matrix(int size, tridiagonal_matrix*);
    void tridiagonal_clear_matrix(tridiagonal_matrix*);
    void tridiagonal_solve(tridiagonal_matrix*, floatdig* lhand, floatdig* x);

#ifdef	__cplusplus
}
#endif

#endif	/* _TRIDIAGONAL_H */

